<?php

/**
 * medicos actions.
 *
 * @package    nogoya
 * @subpackage medicos
 * @author     Your name here
 * @version    SVN: $Id: actions.class.php 2692 2006-11-15 21:03:55Z fabien $
 */
class medicosActions extends sfActions
{
  /**
   * Executes index action
   *
   */
  public function executeIndex() {
    $this->usuarios = UsuarioPeer::getByCredencial("realiza_estudios");
  }
  public function executeConfigurar(){
    $this->id = $this->getRequestParameter("id");
    $this->medico = UsuarioPeer::retrieveByPk($this->id);
  }
  public function executeGuardarEstudios(){
    $usuario_id = $this->getRequestParameter("usuario_id");
    $estudios = $this->getRequestParameter("estudios");
    $con = Propel::getConnection();
    try {
      $con->begin();
    foreach ($estudios as $id => $datos) {
      $obj = EstudioPeer::retrieveByPk($id);
      $practica = (isset($datos["si"])) ? true : false;
      $sobreturno = ($datos["st"] == "") ? $obj->getSobreturno() :  $datos["st"];
      $estudio = UsuarioEstudioPeer::getOneByUsuarioEstudio($usuario_id,$id);
      if (! $estudio) {
        $estudio = new UsuarioEstudio();
        $estudio->setUsuarioId($usuario_id);
        $estudio->setEstudioId($id);
      }
      if (! $practica) {
        $estudio->setActivo(0);
      } else {
        $estudio->setActivo(1);
      }
      $estudio->save();
    }
      $con->commit();
    } catch (Exception $e) {
      $con->rollback();
      die($e);
    }
    $this->redirect("layout/loadComponent?call_module=medicos&call_action=estudios");
  }
}
